package com.cdck.safe.dete.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.cdck.safe.dete.common.base.BasePageQuery;
import com.cdck.safe.dete.model.entity.Booking;
import com.cdck.safe.dete.model.query.BaseKeywordsQuery;
import com.cdck.safe.dete.model.vo.BookingVO;


/**
 * (Booking)表服务接口
 *
 * @author wp
 * @since 2024-02-25 16:43:26
 */
    public interface BookingService extends IService<Booking> {


    /**
     * 分页列表
     *
     * @return
     */
    IPage<BookingVO> queryByPage(BaseKeywordsQuery queryParams);


    /**
     * 获取表单数据
     *
     * @param id
     * @return
     */
    Booking getBookingFormData(Long id);

    /**
     * 新增数据
     *
     * @param booking Booking对象
     * @return
     */
    boolean saveBooking (Booking booking);

   /**
     * 修改数据
     *
     * @param id   id
     * @parambooking Booking对象
     * @return
     */
    boolean updateBooking(Long id, Booking booking);

    /**
     * 删除数据
     *
     * @param idsStr id,多个以英文逗号(,)分割
     * @return
     */
    boolean deleteBookings(String idsStr);

    IPage<BookingVO> getApplicationPage(BaseKeywordsQuery queryParams);

    boolean overrule(Booking booking);

    boolean pass(Long id);

    boolean cancel(Long id);

    boolean finish(Long id);
}
